package com.library.domain;


import com.library.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 图书管会员表 bo_members
 *
 * @author wanghongjie
 * @date 2020-01-18
 */
public class BoMembers extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Integer id;
    /**
     * 会员名称
     */
    private String membersName;
    /**
     * 会员编号
     */
    private String membersNo;
    /**
     * 会员生日
     */
    private Date birthday;
    /**
     * 性别
     */
    private String membersGender;
    /**
     * 会员地址
     */
    private String membersAddress;
    /**
     * 会员电话
     */
    private String membersPhone;
    /**
     * 会员有效开始时间
     */
    private Date effectiveStartTime;
    /**
     * 会员有效结束时间
     */
    private Date effectiveEndTime;

    /**
     * 积分等级
     */
    private Integer integralLevel;
    /**
     * 可用积分
     */
    private Integer availableIntegral;
    /**
     * 会员押金
     */
    private Integer membersDeposit;
    /**
     * 会员押金类型
     */
    private String membersDepositType;
    /**
     * 会员创建人
     */
    private Integer userId;
    /**
     * 会员状态
     */
    private String status;
    /**
     * 扩展字段1
     */
    private String ext1;
    /**
     * 扩展字段2
     */
    private String ext2;
    /**
     * 扩展字段3
     */
    private String ext3;
    /**
     * 临时处理
     */
    private String birthdayFmt;

    /**
     * 会员有效开始时间
     */
    private String effectiveStartTimeFmt;
    /**
     * 会员有效结束时间
     */
    private String effectiveEndTimeFmt;

    /**
     * AppID
     */
    private String token;
    /**
     * 二维码标示
     */
    private String qRcodeUrl;
    /**
     * 获奖标识
     */
    private String awardStatus;
    /**
     * 微信公众号OPENID
     */
    private String openId;
    /**
     * 微信头像
     */
    private String wxHeadImgUrl;

    public String getOpenId() {
        return openId;
    }

    public void setOpenId(String openId) {
        this.openId = openId;
    }

    public String getWxHeadImgUrl() {
        return wxHeadImgUrl;
    }

    public void setWxHeadImgUrl(String wxHeadImgUrl) {
        this.wxHeadImgUrl = wxHeadImgUrl;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    public String getqRcodeUrl() {
        return qRcodeUrl;
    }

    public void setqRcodeUrl(String qRcodeUrl) {
        this.qRcodeUrl = qRcodeUrl;
    }

    public String getAwardStatus() {
        return awardStatus;
    }

    public void setAwardStatus(String awardStatus) {
        this.awardStatus = awardStatus;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return id;
    }


    public void setMembersName(String membersName) {
        this.membersName = membersName;
    }

    public String getMembersName() {
        return membersName;
    }

    public void setMembersNo(String membersNo) {
        this.membersNo = membersNo;
    }

    public String getMembersNo() {
        return membersNo;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setMembersGender(String membersGender) {
        this.membersGender = membersGender;
    }

    public String getMembersGender() {
        return membersGender;
    }

    public void setMembersAddress(String membersAddress) {
        this.membersAddress = membersAddress;
    }

    public String getMembersAddress() {
        return membersAddress;
    }

    public void setMembersPhone(String membersPhone) {
        this.membersPhone = membersPhone;
    }

    public String getMembersPhone() {
        return membersPhone;
    }

    public void setEffectiveStartTime(Date effectiveStartTime) {
        this.effectiveStartTime = effectiveStartTime;
    }

    public Date getEffectiveStartTime() {
        return effectiveStartTime;
    }

    public void setEffectiveEndTime(Date effectiveEndTime) {
        this.effectiveEndTime = effectiveEndTime;
    }

    public Date getEffectiveEndTime() {
        return effectiveEndTime;
    }

    public void setIntegralLevel(Integer integralLevel) {
        this.integralLevel = integralLevel;
    }

    public Integer getIntegralLevel() {
        return integralLevel;
    }

    public Integer getAvailableIntegral() {
        return availableIntegral;
    }

    public void setAvailableIntegral(Integer availableIntegral) {
        this.availableIntegral = availableIntegral;
    }

    public void setMembersDeposit(Integer membersDeposit) {
        this.membersDeposit = membersDeposit;
    }

    public Integer getMembersDeposit() {
        return membersDeposit;
    }

    public void setMembersDepositType(String membersDepositType) {
        this.membersDepositType = membersDepositType;
    }

    public String getMembersDepositType() {
        return membersDepositType;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1;
    }

    public String getExt1() {
        return ext1;
    }

    public void setExt2(String ext2) {
        this.ext2 = ext2;
    }

    public String getExt2() {
        return ext2;
    }

    public void setExt3(String ext3) {
        this.ext3 = ext3;
    }

    public String getExt3() {
        return ext3;
    }


    public String getBirthdayFmt() {
        return birthdayFmt;
    }

    public void setBirthdayFmt(String birthdayFmt) {
        this.birthdayFmt = birthdayFmt;
    }

    public String getEffectiveStartTimeFmt() {
        return effectiveStartTimeFmt;
    }

    public void setEffectiveStartTimeFmt(String effectiveStartTimeFmt) {
        this.effectiveStartTimeFmt = effectiveStartTimeFmt;
    }

    public String getEffectiveEndTimeFmt() {
        return effectiveEndTimeFmt;
    }

    public void setEffectiveEndTimeFmt(String effectiveEndTimeFmt) {
        this.effectiveEndTimeFmt = effectiveEndTimeFmt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("membersName", getMembersName())
                .append("membersNo", getMembersNo())
                .append("birthday", getBirthday())
                .append("membersGender", getMembersGender())
                .append("membersAddress", getMembersAddress())
                .append("membersPhone", getMembersPhone())
                .append("effectiveStartTime", getEffectiveStartTime())
                .append("effectiveEndTime", getEffectiveEndTime())
                .append("integralLevel", getIntegralLevel())
                .append("availableIntegral", getAvailableIntegral())
                .append("membersDeposit", getMembersDeposit())
                .append("membersDepositType", getMembersDepositType())
                .append("userId", getUserId())
                .append("status", getStatus())
                .append("ext1", getExt1())
                .append("ext2", getExt2())
                .append("ext3", getExt3())
                .toString();
    }
}
